|
Cytosim
PI
Cytoskeleton Simulator
|
The Motor is a Hand, and thus can bind and unbind from fibers.
A bound Motor can move along its fiber. The direction of the motor is set by the sign of max_speed. If the speed is positive, the motor attempts to move towards the PLUS_END.
The speed is linearly proportional to the load of the motor. The load is the projection of the force vector on the direction of the fiber.
The actual movement is calculated from the time step:
As defined in Hand, detachment increases exponentially with force.
See Examples and the Parameters of Motor.
Public Member Functions | |
| Motor (MotorProp const *p, HandMonitor *h) | |
| constructor | |
| ~Motor () | |
| destructor | |
| void | stepUnloaded () |
| simulate when this is attached but not under load | |
| void | stepLoaded (Vector const &force) |
| simulate when this is attached and under load | |
Public Member Functions inherited from Hand | |
| Hand (HandProp const *, HandMonitor *h) | |
| constructor More... | |
| virtual | ~Hand () |
| destructor | |
| virtual bool | attachmentAllowed (FiberBinder &site) |
| tell if attachment at given site is possible More... | |
| virtual void | attach (FiberBinder &site) |
| attach the hand at the position described by site More... | |
| virtual void | detach () |
| detach | |
| virtual void | stepFree (const FiberGrid &, Vector const &pos) |
| simulate when the Hand is not attached More... | |
| virtual void | handleOutOfRange (FiberEnd) |
| this is called when the attachment point is outside the Fiber's range | |
| void | attachTo (Fiber *, real ab, FiberEnd from) |
| attach to the given position on the given Fiber (calls attach(FiberBinder)) | |
| void | attachToEnd (Fiber *, FiberEnd end) |
| attach to the given end on the given Fiber (calls attach(FiberBinder)) | |
| void | read (InputWrapper &, Simul &) |
| read | |
| void | write (OutputWrapper &) const |
| write | |
Public Member Functions inherited from FiberBinder | |
| FiberBinder () | |
| construct as unattached | |
| FiberBinder (Fiber *f, real a) | |
| construct at the given distance from the origin | |
| void | relocate (Fiber *f) |
| move to a different fiber, at same abscissa | |
| void | relocate (Fiber *f, real a) |
| move to a different fiber, at given position | |
| void | moveToEnd (FiberEnd end) |
| move to the specified FiberEnd (CENTER is also a valid argument) | |
| void | moveTo (real abs) |
| move along the Fiber to specified abscissa, or detach | |
| void | moveBy (real dabs) |
| move along the Fiber by the abscissa offset dabs, or detach | |
| bool | attached () const |
| true if attached | |
| Fiber * | fiber () const |
| Fiber to which this is attached, or zero if not attached. | |
| Vector | pos () const |
| position in space | |
| Vector | dir () const |
| direction of Fiber obtained by normalization | |
| Vector | dirFiber () const |
| the direction of the Fiber at the point of attachment | |
| real | abscissa () const |
| the abscissa, from the origin of the Fiber | |
| real | abscissaFrom (FiberEnd from) const |
| abscissa, counted from the specified FiberEnd (in reversed direction for the PLUS_END) | |
| FiberEnd | nearestEnd () const |
| nearest end to the point specified by the abscissa from the origin | |
| bool | withinP () const |
| true if abscissa is below abscissaP | |
| bool | withinM () const |
| true if abscissa is above abscissaM | |
| bool | within () const |
| true if abscissa is within the fiber boundaries | |
| const PointInterpolated & | interpolation () const |
| the interpolation | |
| void | updateBinder () |
| set a valid PointInterpolated | |
| void | checkFiberRange () |
| check the abscissa against the edges of the fiber, calling handleOutOfRange() if necessary. | |
| FiberBinder * | next () const |
| a static_cast<> of Node::next() | |
| FiberBinder * | prev () const |
| a static_cast<> of Node::prev() | |
| void | checkAbscissa () const |
| check that fbAbs is within Fiber::abscissaM() and Fiber::abscissaP() | |
| int | bad () const |
| check validity of the interpolation (debuging purposes) | |
Public Member Functions inherited from Node | |
| Node () | |
| constructor set as unlinked | |
| virtual | ~Node () |
| destructor More... | |
| bool | linked () const |
| true if Node is linked | |
| Node * | next () const |
| the next Node in the list, or zero if this is last | |
| Node * | prev () const |
| the previous Node in the list, or zero if this is first | |
| NodeList * | list () const |
| the list where the object is linked, or zero | |
| ObjectSet * | objset () const |
| return associated ObjectSet | |
Additional Inherited Members | |
Public Attributes inherited from Hand | |
| HandProp const * | prop |
| Property. | |
Protected Member Functions inherited from Hand | |
| bool | testDetachment () |
| test for detachment with rate prop->unbinding_rate More... | |
| bool | testKramersDetachment (real force) |
| test for detachment with Kramers theory More... | |
Protected Attributes inherited from Hand | |
| HandMonitor * | haMonitor |
| the monitor associated with this Hand | |
| real | nextAttach |
| Gillespie normalized time for attachment. | |
| real | nextDetach |
| Gillespie normalized time for detachment. | |
Protected Attributes inherited from FiberBinder | |
| Fiber * | fbFiber |
| the Fiber on which it is attached, or 0 if not attached | |
| real | fbAbs |
| the abscissa from the Fiber origin | |
Protected Attributes inherited from Node | |
| Node * | nNext |
| the next Node in the list | |
| Node * | nPrev |
| the previous Node in the list | |